Important Update:
- DataTreeCore: - Add GetLen() method to get length of (text) value - FileCore: - Minor fix: rename MaxLen -> Len
This commit is contained in:
@@ -554,6 +554,21 @@ const char * CDataTree::GetStr( TDataMember * BaseMember, const char * Path, int
|
|||||||
}
|
}
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
const int CDataTree::GetLen( TDataMember * BaseMember, const char * Path )
|
||||||
|
{
|
||||||
|
TDataMember * Member;
|
||||||
|
|
||||||
|
// Validate
|
||||||
|
if ((Member = GetMember( BaseMember, Path, false )) &&
|
||||||
|
((Member->Type == jtString) || (Member->Type == jtFloat) || (Member->Type == jtInt) || (Member->Type == jtBool)) ) {
|
||||||
|
return Member->Len;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
const long CDataTree::GetInt( TDataMember * BaseMember, const char * Path, long Default, bool Create, const char * Mask )
|
const long CDataTree::GetInt( TDataMember * BaseMember, const char * Path, long Default, bool Create, const char * Mask )
|
||||||
{
|
{
|
||||||
TDataMember * Member;
|
TDataMember * Member;
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ public:
|
|||||||
|
|
||||||
const char * GetStr( TDataMember * BaseMember, const char * Path, const char * Default = NULL, bool Create = false );
|
const char * GetStr( TDataMember * BaseMember, const char * Path, const char * Default = NULL, bool Create = false );
|
||||||
const char * GetStr( TDataMember * BaseMember, const char * Path, int &Len, const char * Default = NULL, bool Create = false );
|
const char * GetStr( TDataMember * BaseMember, const char * Path, int &Len, const char * Default = NULL, bool Create = false );
|
||||||
|
const int GetLen( TDataMember * BaseMember, const char * Path );
|
||||||
const long GetInt( TDataMember * BaseMember, const char * Path, long Default = 0, bool Create = false, const char * Mask = NULL );
|
const long GetInt( TDataMember * BaseMember, const char * Path, long Default = 0, bool Create = false, const char * Mask = NULL );
|
||||||
const double GetFloat( TDataMember * BaseMember, const char * Path, double Default = 0.0, bool Create = false, const char * Mask = NULL );
|
const double GetFloat( TDataMember * BaseMember, const char * Path, double Default = 0.0, bool Create = false, const char * Mask = NULL );
|
||||||
const bool GetBool( TDataMember * BaseMember, const char * Path, bool Default = false, bool Create = false );
|
const bool GetBool( TDataMember * BaseMember, const char * Path, bool Default = false, bool Create = false );
|
||||||
|
|||||||
10
FileCore.cpp
10
FileCore.cpp
@@ -240,7 +240,7 @@ int CFileCore::WriteToFD( int FD, const char * Data, int Len )
|
|||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
// Manual Data Input/Output
|
// Manual Data Input/Output
|
||||||
int CFileCore::Input( const char * ChannelName, const char * Data, int MaxLen )
|
int CFileCore::Input( const char * ChannelName, const char * Data, int Len )
|
||||||
{
|
{
|
||||||
TFileHandle * FileHandle = NULL;
|
TFileHandle * FileHandle = NULL;
|
||||||
int BytesWritten = 0;
|
int BytesWritten = 0;
|
||||||
@@ -249,8 +249,8 @@ int CFileCore::Input( const char * ChannelName, const char * Data, int MaxLen )
|
|||||||
if (!ChannelName || !Data) {
|
if (!ChannelName || !Data) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else if (MaxLen == -1) {
|
else if (Len == -1) {
|
||||||
MaxLen = strlen( Data );
|
Len = strlen( Data );
|
||||||
};
|
};
|
||||||
|
|
||||||
// Get Channel
|
// Get Channel
|
||||||
@@ -262,7 +262,7 @@ int CFileCore::Input( const char * ChannelName, const char * Data, int MaxLen )
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Log event
|
// Log event
|
||||||
Log->Output( LogLevel, dlHigh, LogOutput, Data, MaxLen, "%s: Channel '%s' - IN:", Name, ChannelName );
|
Log->Output( LogLevel, dlHigh, LogOutput, Data, Len, "%s: Channel '%s' - IN:", Name, ChannelName );
|
||||||
|
|
||||||
// Open file
|
// Open file
|
||||||
if (!OpenFile( FileHandle )) {
|
if (!OpenFile( FileHandle )) {
|
||||||
@@ -270,7 +270,7 @@ int CFileCore::Input( const char * ChannelName, const char * Data, int MaxLen )
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Handle Incoming data
|
// Handle Incoming data
|
||||||
BytesWritten = WriteToFD( FileHandle->FD, Data, MaxLen );
|
BytesWritten = WriteToFD( FileHandle->FD, Data, Len );
|
||||||
SetStartTime( &(FileHandle->PersistTime) );
|
SetStartTime( &(FileHandle->PersistTime) );
|
||||||
|
|
||||||
// Return processed bytes
|
// Return processed bytes
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ public:
|
|||||||
virtual bool SetFilePersistence( TFileHandle * FileHandle, bool Persistent, int PersistTimeout );
|
virtual bool SetFilePersistence( TFileHandle * FileHandle, bool Persistent, int PersistTimeout );
|
||||||
|
|
||||||
// Data Input
|
// Data Input
|
||||||
virtual int Input( const char * ChannelName, const char * Data, int MaxLen = -1 );
|
virtual int Input( const char * ChannelName, const char * Data, int Len = -1 );
|
||||||
|
|
||||||
// Processing data
|
// Processing data
|
||||||
virtual bool Process();
|
virtual bool Process();
|
||||||
|
|||||||
Reference in New Issue
Block a user